Envío de Correo Electrónico con Node-RED
Este tutorial le muestra cómo configurar notificaciones automáticas por correo electrónico desde su cámara OV80i usando Node-RED. Aprenderá a configurar la integración con Gmail y crear flujos que envíen alertas de inspección, actualizaciones del estado del sistema y notificaciones de fallas directamente a su correo electrónico.
Lo que construirá: Un sistema automatizado de correo electrónico que envía resultados de inspección, alertas y notificaciones del OV80i a destinatarios especificados usando SMTP de Gmail.
Aplicación en el mundo real: Reciba alertas instantáneas por correo cuando las inspecciones fallen, envíe reportes diarios de calidad a la gerencia o notifique a los equipos de mantenimiento sobre problemas del sistema, todo automáticamente desde su sistema de inspección por visión.
Prerrequisitos
- Cámara OV80i con acceso a Node-RED
- Cuenta de Gmail para enviar correos
- Conocimientos básicos de flujos en Node-RED
- Acceso a la configuración de seguridad de la cuenta de Google
Resumen del Tutorial
Lo que construiremos: Un flujo en Node-RED que envía automáticamente notificaciones por correo con resultados de inspección y alertas del sistema.
Tiempo requerido: 20-30 minutos (incluyendo configuración de Gmail)
Habilidades aprendidas: Configuración de contraseña de aplicación Gmail, configuración SMTP, notificaciones automáticas por correo
Paso 1: Configurar Contraseña de Aplicación de Gmail
1.1 Habilitar Verificación en Dos Pasos
- Inicie sesión en su cuenta de Google en accounts.google.com
- Haga clic en "Seguridad" en el menú de navegación izquierdo
- Ubique la sección "Inicio de sesión en Google"
- Haga clic en "Verificación en dos pasos"
- Siga las indicaciones para habilitar la verificación en dos pasos si aún no está activada
La verificación en dos pasos es requerida antes de poder crear contraseñas de aplicación.
1.2 Generar Contraseña de Aplicación
- Regrese a la página de Seguridad después de habilitar la verificación en dos pasos
- Haga clic en "Contraseñas de aplicaciones" (bajo "Inicio de sesión en Google")
- Seleccione "Correo" como tipo de aplicación
- Seleccione "Otro" como tipo de dispositivo
- Ingrese un nombre como "OV80i Node-RED Email"
- Haga clic en "Generar"
1.3 Guarde su Contraseña de Aplicación
- Copie la contraseña de 16 caracteres que Google muestra
- Guárdela de forma segura, la necesitará para la configuración en Node-RED
- Nota: Esta contraseña sólo se muestra una vez. Si la pierde, genere una nueva
Punto de control: Debe tener guardada una contraseña de aplicación Gmail de 16 caracteres para usar en Node-RED.
Paso 2: Instalar Nodos de Correo (Si es Necesario)
2.1 Verificar Nodos de Correo
- Abra Node-RED en su cámara OV80i
- Busque en la paleta izquierda un nodo "email" en la sección de salida
- Si no está disponible, deberá instalar el paquete de correo
2.2 Instalar Paquete de Correo (Si es Requerido)
- Haga clic en el menú hamburguesa (≡) en Node-RED
- Seleccione "Manage palette"
- Haga clic en la pestaña "Install"
- Busque "node-red-node-email"
- Haga clic en "Install" junto al paquete
Paso 3: Crear Flujo Básico de Correo
3.1 Agregar Nodos Requeridos
- Navegue a IO Block > Configure I/O para acceder a Node-RED
- Arrastre estos nodos desde la paleta al lienzo:
- Nodo Inject (para pruebas)
- Nodo Email (de la sección de salida)
- Conecte la salida del inject a la entrada del email
3.2 Estructura Básica del Flujo
Inject → Email
Propósito del flujo: Envío simple de correo para pruebas y notificaciones básicas.
Paso 4: Configurar Contenido del Correo
4.1 Configurar Nodo Inject
- Haga doble clic en el nodo inject para abrir propiedades
- Configure el payload:
- Tipo de payload: "string"
- Valor del payload: Texto del cuerpo del correo (ejemplo: "Alerta de inspección desde OV80i")
- Agregar asunto del correo:
-
Haga clic en "+ add" para agregar una propiedad
-
Nombre de la propiedad: "topic"
-
Valor de la propiedad: Asunto del correo (ejemplo: "Alerta de Inspección OV80i")
-
4.2 Ejemplo de Configuración Básica
Payload (cuerpo del correo):
Inspección completada en Estación 1
Estado: Alerta activada
Hora: Verifique la marca de tiempo para detalles
Topic (asunto del correo):
Alerta de Inspección OV80i - Estación 1
4.3 Guardar Configuración del Inject
- Asigne un nombre al nodo como "Disparador de Correo"
- Haga clic en "Done" para guardar la configuración
Paso 5: Configurar Ajustes SMTP del Correo
5.1 Configurar Nodo Email
- Haga doble clic en el nodo email para abrir propiedades
- Configure ajustes básicos:
- Nombre: "Enviar Alerta por Correo" (o nombre descriptivo)
- Para: Dirección de correo del destinatario (ejemplo: quality@company.com)
5.2 Configurar SMTP de Gmail
- Servidor:
smtp.gmail.com
- Puerto:
465
- Marque "Usar conexión segura"
- Tipo de autenticación:
Basic
- Usuario: Su dirección completa de Gmail (ejemplo: alerts@company.com)
- Contraseña: La contraseña de aplicación de 16 caracteres del Paso 1
5.3 Ajustes de Seguridad
- Marque "Verificar que el certificado del servidor sea válido"
- Verifique que todos los ajustes estén correctos
- Haga clic en "Done" para guardar la configuración del nodo email
Punto de control: Su nodo email no debe mostrar indicadores de error y debe mostrar la dirección del destinatario.
Paso 6: Probar su Flujo de Correo
6.1 Desplegar y Probar
- Haga clic en el botón "Deploy" en la esquina superior derecha
- Espere el mensaje "Successfully deployed"
- Haga clic en el botón del nodo inject (cuadro gris a la izquierda)
6.2 Verificar Entrega del Correo
- Revise el correo del destinatario para el mensaje de prueba
- Revise la carpeta de spam si el correo no aparece en la bandeja de entrada
- Busque mensajes de error en el panel de debug de Node-RED
6.3 Solución de Problemas Si es Necesario
Problemas comunes:
- Contraseña de aplicación incorrecta: Regenerar la contraseña de aplicación Gmail
- Configuración SMTP: Verificar que servidor y puerto sean correctos
- Firewall: Asegurar que el tráfico SMTP saliente esté permitido
Paso 7: Integración con Resultados de Inspección
7.1 Conectar al Flujo de Inspección
Para enviar correos basados en resultados de inspección:
- Ubique su flujo principal de inspección (comienza con "All Block Outputs")
- Agregue su flujo de correo como una rama desde el procesamiento de inspección
- Conecte después de la lógica de inspección pero en paralelo a los resultados finales
7.2 Ejemplo de Flujo de Integración
All Block Outputs → [Lógica de Inspección] → Resultado Final Pass/Fail
↓
Formatear Correo → Enviar Correo
7.3 Contenido Dinámico del Correo
Reemplace el nodo inject con un nodo function para contenido dinámico:
// Correo dinámico basado en resultados de inspección
const result = msg.payload.result ? "PASSED" : "FAILED";
const timestamp = new Date().toLocaleString();
const station = global.get("station_name") || "Estación Desconocida";
// Asunto del correo
msg.topic = `Inspección ${result} - ${station}`;
// Cuerpo del correo
msg.payload = `Reporte de Inspección:
Estado: ${result}
Estación: ${station}
Hora: ${timestamp}
Imagen: ${msg.payload.image_url || "No hay imagen disponible"}
Por favor revise y tome las acciones correspondientes.`;
return msg;
Paso 8: Ejemplo Completo de Flujo
8.1 Importar Flujo Listo para Usar
Puede importar este JSON completo del flujo:
[
{
"id": "email_node_1",
"type": "e-mail",
"name": "Enviar Alerta de Inspección",
"server": "smtp.gmail.com",
"port": "465",
"secure": true,
"authtype": "BASIC",
"to": "quality@company.com"
},
{
"id": "format_email",
"type": "function",
"name": "Formatear Contenido de Correo",
"func": "const result = msg.payload.result ? 'PASSED' : 'FAILED';\nmsg.topic = `Inspección ${result}`;\nmsg.payload = `Estado: ${result}\\nHora: ${new Date()}`;\nreturn msg;"
}
]
8.2 Personalizar para Sus Necesidades
- Actualice las direcciones de correo para su organización
- Modifique el contenido del correo para sus requerimientos específicos
- Ajuste los tiempos y condiciones de disparo
- Pruebe exhaustivamente antes de desplegar en producción
Solución de Problemas
Problemas Comunes
Problema | Síntomas | Solución |
---|---|---|
Fallo de autenticación | Errores "Login failed" | Verifique que la contraseña de aplicación sea correcta y que la verificación en dos pasos esté habilitada |
Tiempo de espera agotado | No se envía correo, errores de timeout | Revise configuración de firewall, verifique servidor SMTP y puerto |
Correos en spam | Correos entregados pero en carpeta de spam | Agregue remitente a lista segura, mejore contenido del correo |
Flujo no se dispara | No hay salida en debug | Verifique conexiones del flujo y condiciones de disparo |
Depure su Flujo de Correo
- Agregue nodos debug después de cada paso para rastrear datos
- Revise los logs de Node-RED para mensajes de error detallados
- Pruebe configuración SMTP con clientes de correo externos si es necesario
- Verifique conectividad de red desde la cámara a los servidores de Gmail
¡Éxito! Su Integración de Correo Está Completa
Su cámara OV80i ahora puede:
✅ Enviar notificaciones automáticas por correo para resultados de inspección
✅ Entregar mensajes enriquecidos y formateados con detalles de inspección
✅ Soportar múltiples destinatarios y flujos de escalamiento
✅ Proporcionar reportes programados y resúmenes
✅ Manejar mensajes condicionales basados en resultados de inspección
Mejores Prácticas
Gestión de Correos
- Use asuntos descriptivos con indicadores claros de estado
- Mantenga mensajes concisos pero informativos
- Incluya marcas de tiempo e identificadores de estación
- Proporcione información accionable en las notificaciones
Seguridad y Confiabilidad
- Proteja las contraseñas de aplicación - guárdelas de forma segura y rote regularmente
- Use cuentas de correo dedicadas para notificaciones del sistema
- Pruebe la entrega de correos regularmente para asegurar confiabilidad
- Monitoree fallas de entrega y tenga métodos de notificación alternativos
Consideraciones de Rendimiento
- Limite la frecuencia de correos para evitar detección como spam
- Use listas de destinatarios adecuadas para diferentes tipos de alertas
- Implemente limitación de tasa para sistemas de alto volumen
- Considere el tamaño del correo al incluir adjuntos grandes
Próximos Pasos
Después de configurar las notificaciones por correo:
- Cree plantillas de correo para diferentes tipos de alertas
- Configure listas de distribución para diversos interesados
- Implemente flujos de escalamiento para problemas críticos
- Cree reportes programados para la gerencia
- Integre con otros sistemas de notificación (SMS, Teams, etc.)